package com.ruoyi.inventory.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.base.domain.Materials;
import com.ruoyi.base.domain.Product;
import com.ruoyi.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.ruoyi.common.annotation.Excel;

import java.time.LocalDateTime;
import java.util.List;

/**
 * 库存对象 t_inventory
 * 
 * @author ruoyi
 * @date 2024-10-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Inventory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 所属仓库id */
    @Excel(name = "所属仓库id")
    private Long warehouseId;

    /** 物品编号 */
    @Excel(name = "物品编号")
    private String goodsNo;

    /** 物品类型 */
    @Excel(name = "物品类型")
    private String goodsType;

    /** 当前库存数量 */
    @Excel(name = "当前库存数量")
    private Long quantity;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private LocalDateTime createdTime;

    /** 提交人id */
    @Excel(name = "提交人id")
    private Long creatorId;

    /** 提交时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "提交时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime submissionTime;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "更新时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updatedTime;

    /**仓库名*/
    private String warehouseName;
    /**仓库地址*/
    private String location;
    /**物料类*/
    private List<Materials> materialsList;
    /**产品类*/
    private List<Product> productList;
    /**用户名*/
    private String userName;
}
